package com.example.myspringai.util;

import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Base64;

public class Base64ToImage {

    public static void main(String[] args) {
        // 假设这是你的 base64 字符串
        String base64String = "iVBORw0KGgoAAAANSUhEUgAAAAUA..."; // 你的 Base64 数据

        // 调用方法将 Base64 字符串转换为图片
        boolean success = base64ToImage(base64String, "output.png");

        if (success) {
            System.out.println("图片保存成功");
        } else {
            System.out.println("图片保存失败");
        }
    }

    /**
     * 将 Base64 编码的字符串转换为图片并保存到本地
     * @param base64String Base64 编码的字符串
     * @param filePath 目标文件路径
     * @return 是否成功保存图片
     */
    public static boolean base64ToImage(String base64String, String filePath) {
        try {
            // 解码 Base64 字符串
            byte[] imageBytes = Base64.getDecoder().decode(base64String);

            // 创建文件输出流
            try (OutputStream out = new FileOutputStream(filePath)) {
                out.write(imageBytes);
            }

            return true;

        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }
}

